// uvm_tb/agent/binary_alu_sequencer.sv
`ifndef BINARY_ALU_SEQUENCER_SV
`define BINARY_ALU_SEQUENCER_SV

// The sequencer is responsible for feeding transactions to the driver.
// It's a standard UVM component, so often it requires no extra implementation
// beyond the standard class definition.

class binary_alu_sequencer extends uvm_sequencer #(binary_alu_transaction);

    // ========================================================================
    // UVM Macros
    // ========================================================================
    `uvm_component_utils(binary_alu_sequencer)

    // ========================================================================
    // Constructor
    // ========================================================================
    function new(string name = "binary_alu_sequencer", uvm_component parent = null);
        super.new(name, parent);
    endfunction

endclass : binary_alu_sequencer

`endif  // BINARY_ALU_SEQUENCER_SV
